//
//  Person.swift
//  swift-02
//
//  Created by China Dragon on 2023/8/19.
//

import UIKit

/*
 swift 中构造函数都是 init
 */
class Person: NSObject {
    
    //可选项，允许变量为空
    var name: String?
    var name2: String
    var age: Int
    
//    override init() {
//        super.init()
//    }
    
    //重写构造函数
    override init() {
        print("person 构造函数")
        name2 = "test" // 子类的属性初始化要在调用  super.init() 之前
        age = 20
        
        //从xcode7 beta 5开始，系统会默认声称一个super.init() 方法调用
        //建议保留
        super.init()
//        name2 = "test" //放在下面会报错
    }

    /*
     重栽构造函数
     oc 中使用iniWithxxx的方式
     */
    init(name: String? = nil, name2: String, age: Int) {
        self.name = name
        self.name2 = name2
        self.age = age
    
    }

   
}
